home *** CD-ROM | disk | FTP | other *** search
/ Micromanía 93 / CDMM_93_2.ISO / Project Nomads / nomads_demo_eng.exe / WINDMILL.TCL < prev    next >
Encoding:
Text File  |  2002-04-19  |  3.2 KB  |  133 lines

  1. #
  2. #   Zustands-▄berwachungs-Script
  3. #   State Watch Script
  4. #
  5. #   Windmill
  6. #
  7. #   created:    15-Jun-2000 Bernd
  8. #   
  9. #   (C) COPYRIGHT 2000 RADONLABS GMBH
  10. #
  11.  
  12. proc windmillwatch_normal {} {
  13.  
  14.     # vorerst hier unzerstoerbar. Bleibt so, bis es aufgesammelt
  15.     # (in BackPack) oder gebaut (kein Artefakt mehr) wird 
  16.     if {[.getartefactmode] == "false"} {
  17.         .announcestate house
  18.     } elseif {[.iscollected] == "true"} {
  19.         .announcestate backpack
  20.     } elseif {[.getcharges] <= 0} {
  21.         .setremoveable true
  22.     } elseif {[.getcreator] != "null"} {
  23.         .announcestate infactoryslot
  24.     }
  25. }
  26.  
  27. proc windmillwatch_infactoryslot {} {
  28.  
  29.     # vorerst hier unzerstoerbar. Bleibt so, bis es aufgesammelt
  30.     # (in BackPack) oder gebaut (kein Artefakt mehr) wird 
  31.     if {[.getartefactmode] == "false"} {
  32.         .announcestate house
  33.     } elseif {[.iscollected] == "true"} {
  34.         .announcestate backpack
  35.     } elseif {[.getcharges] <= 0} {
  36.         .setremoveable true
  37.     } elseif {[.getcreator] == "null"} {
  38.         .announcestate normal
  39.     }
  40. }
  41.  
  42. proc windmillwatch_house {} {
  43.  
  44.     # kann zerstoert oder wieder zusammengeklappt werden
  45.     if {[.iskilled] == "true"} {
  46.         .announcestate explode
  47.     } elseif {[.getartefactmode] == "true"} {
  48.         .announcestate normal
  49.     } elseif {[.isdooropen] == "true"} {
  50.         .announcestate open
  51.     } elseif {[.removebuilding] == "true"} {
  52.         .announcestate remove
  53.     }
  54. }
  55.  
  56. proc windmillwatch_explode {} {
  57.  
  58.     # Uebergang zum Artefakt oder wegnehmen
  59.     if {[.isanimfinished] == "true"} {
  60.         if {[.getcharges] <= 0.0} {
  61.             .setremoveable true
  62.         } else {
  63.             .announcestate normal
  64.         .removefromisland
  65.         }
  66.     }
  67. }
  68.  
  69. proc windmillwatch_remove {} {
  70.  
  71.     # Uebergang zum Artefakt oder wegnehmen
  72.     if {[.isanimfinished] == "true"} {
  73.         if {[.getcharges] <= 0.0} {
  74.             .setremoveable true
  75.         } else {
  76.             .announcestate normal
  77.         .removefromisland
  78.         }
  79.     }
  80. }
  81.  
  82. proc windmillwatch_backpack {} {
  83.  
  84.     # Moeglich: usgeworfen (Nicht mehr "gesammelt") oder im
  85.     # Menue gezeigt (sichtbar)
  86.     if {[.iscollected] == "false"} {
  87.         .announcestate normal
  88.     } elseif {[.isvisible] == "true"} {
  89.         .announcestate menue
  90.     }
  91. }
  92.  
  93. proc windmillwatch_menu {} {
  94.  
  95.     if {[.isvisible] == "false"} {
  96.         .announcestate backpack
  97.     } elseif {[.getartefactuse] == "true"} {
  98.         .announcestate build
  99.     } elseif {[.iscollected] == "false"} {
  100.         .announcestate normal
  101.     }
  102. }
  103.  
  104. proc windmillwatch_bauphase {} {
  105.  
  106.     # kann zerstoert oder wieder zusammengeklappt werden
  107.     if {[.iskilled] == "true"} {
  108.         .announcestate explode
  109.     } elseif {[.getartefactmode] == "true"} {
  110.         .announcestate normal
  111.     } elseif {[.isstatetimeover] == "true"} {
  112.         .announcestate house
  113.         usersymbolicname playerwindmill
  114.     }
  115. }
  116.  
  117. proc windmillwatch_build {} {
  118.  
  119.     if {[.iskilled] == "true"} {
  120.         .announcestate explode
  121.     } elseif {[.getartefactmode] == "false"} {
  122.         .announcestate bauphase
  123.     } elseif {[.getartefactuse] == "false"} {
  124.         .announcestate backpack
  125.     }
  126. }
  127.  
  128. proc windmillwatch_cinematic {} {
  129.  
  130.     # empty
  131. }    
  132.  
  133.